// 202. 快乐数
// https://leetcode-cn.com/problems/happy-number/
// 2021年4月20日 17点51分
package main

import (
	"fmt"
)

func isHappy(n int) bool {
	dict := map[int]int{}
	for n != 1 && dict[n] == 0 {
		dict[n]++
		n = recur(n)
	}
	return n == 1
}

func recur(n int) int {
	r := 0
	for n != 0 {
		t := n % 10
		n /= 10
		r += t * t
	}
	return r
}

func main() {
	r := isHappy(19)
	fmt.Println(r)
}
